package com.quick.develop.flowable.domain.entrust;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Date;
import java.util.Set;

import static com.quick.develop.framework.utils.DateUtils.YYYY_MM_DD;

/**
 * @author junyuan.liu
 * @description:
 * @date 2022/9/7 19:59
 */
@ApiModel("流程管理后台 - 流程委托到期 VO")
@Data
public class BpmEntrustDueReqVO implements Serializable {
    private static final long serialVersionUID = -5406923998387667503L;
    
    @ApiModelProperty(value = "流程定义Key")
    private String modelKey;

    @ApiModelProperty(value = "流程实例ID")
    private String processInstanceId;
    
    @ApiModelProperty(value = "流程定义Key")
    private Set<String> modelKeys;

    @ApiModelProperty(value = "委托人", notes = "多个")
    private Set<String> entrustUsers;

    @ApiModelProperty(value = "委托人", notes = "单个")
    private String entrustUser;

    @ApiModelProperty(value = "过期时间", required = true)
    @NotNull(message = "过期时间不能为空")
    @DateTimeFormat(pattern = YYYY_MM_DD)
    private Date dueDate;
}
